#ifndef __spinlock_h_
#define __spinlock_h_

// 宏定义参考南京大学《操作系统：设计与实现》
// #define atomic \
// for (int __i = (spin_lock(), 0); __i < 1; __i++, spin_unlock())

// 互斥锁
struct spinlock {
    uint locked;       // 表示锁的持有状态，0:未锁，1:上锁
    char *name;        // 锁名称
    struct cpu *cpu;   // 持有该锁的 CPU
};

#endif